package com.fortune.dao;

import com.fortune.dto.in.mUnit.MUnitAddDto;
import com.fortune.dto.in.mUnit.MUnitEditDto;
import com.fortune.dto.in.mUnit.MUnitListDto;
import com.fortune.vo.mUnit.MUnit;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface MUnitDao {
    /**
     * 查询商品单位
     * @param companyId
     * @return
     */
    List<MUnit> queryMunit(@Param("companyId") String companyId, @Param("mUnitListDto") MUnitListDto mUnitListDto);

    /**
     * 查询商品单位个数
     * @param companyId
     * @param mUnitListDto
     * @return
     */
    int queryMunitCount(@Param("companyId") String companyId, @Param("mUnitListDto") MUnitListDto mUnitListDto);

    /**
     * 添加商品单位
     * @param companyId
     * @param mUnitAddDto
     * @return
     */
    int addMunit(@Param("companyId") String companyId, @Param("mUnitAddDto") MUnitAddDto mUnitAddDto);

    /**
     * 编辑商品单位
     * @param companyId
     * @param mUnitEditDto
     * @return
     */
    int editMunit(@Param("companyId") String companyId, @Param("mUnitEditDto") MUnitEditDto mUnitEditDto);

    /**
     * 删除商品单位
     * @param companyId
     * @param mUnitId
     * @return
     */
    int deleteMunit(@Param("companyId") String companyId, @Param("mUnitId") String mUnitId);

    /**
     * 查询该名称是否存在
     * @param companyId
     * @param mUnitAddDto
     * @return
     */
    int queryMunitExist(@Param("companyId") String companyId, @Param("mUnitAddDto") MUnitAddDto mUnitAddDto);

    /**
     * 编辑时查询该名称是否存在
     * @param companyId
     * @param mUnitEditDto
     * @return
     */
    int queryEditMunitExist(@Param("companyId") String companyId, @Param("mUnitEditDto") MUnitEditDto mUnitEditDto);

    /**
     * 查询商品单位
     * @param companyId
     * @return
     */
    List<MUnit> queryProduceMunit(String companyId);
}
